package com.example.demo.utils;

import cn.hutool.core.date.DateUtil;
import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;

import java.util.Date;


public class TokenUtils {
    /**
     * 生成token
     * @return
     */
    public static String getToken(String userId,String sign){

        return JWT.create().withAudience(userId) // 将 user id 保存到 token 里面
                .withExpiresAt(DateUtil.offsetHour(new Date(),2)) //五分钟后token过期
                .sign(Algorithm.HMAC256(sign)); // 以 password 作为 token 的密钥
            }
        /**
         *获取当前登录的用户信息
         * */
//        public static User getCurrentUser(){
//            try{
//                HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
//                String token = request.getHeader("token");
//                if(StrUtil.isNotBlank(token)) {
//                    String userId = JWT.decode(token).getAudience().get(0);
//                    return   staticUserService.getById(Integer.valueOf(userId));
//                }
//            } catch (Exception e) {
//                return  null;
//            }
//            return  null;
//        }



}
